export default [
  {
    title: "数据类型",
    content: `<p>基础数据类型：Undefined、Null、Boolean、Number、String、Object、Symbol、BigInt</p>
    <p>复杂数据类型：Object</p>
    <p>栈：原始数据类型（Undefined、Null、Boolean、Number、String、Symbol、BigInt）</p>
    <p>堆：引用数据类型（对象、数组和函数）</p>
    `,
  },
  {
    title: "数据类型检测方式",
    content: `<h3 class="h3-content">（1）typeof</h3>
    <p>其中数组、对象、null都会被判断为object，其他判断都正确。</p>
    <h3 class="h3-content">（2）instanceof</h3>
    <p>instanceof可以正确判断对象的类型，其内部运行机制是判断在其原型链中能否找到该类型的原型。</p>
    <p>instanceof只能正确判断引用数据类型，而不能判断基本数据类型。instanceof 运算符可以用来测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性</p>
    <h3 class="h3-content">（3） constructor</h3>
    <p>constructor有两个作用，一是判断数据的类型，二是对象实例通过 constrcutor 对象访问它的构造函数。需要注意，如果创建一个对象来改变它的原型，constructor就不能用来判断数据类型了</p>
    <h3 class="h3-content">(4) Object.prototype.toString.call</h3>
    <p>这个方法通过调用 Object 原型上的 toString 方法，并传入一个参数（通常是要检测的对象），来返回一个表示该对象类型的字符串。</p>
    `,
  },
  {
    title: "this指向",
    content: `<p>
      1、箭头函数 <br />
      2、new <br />
      3、bind，多次bind只认第一次bind <br />
      4、apply和call <br />
      5、obj. <br />
      6、直接调用 <br />
      7、不在函数里 <br />
    </p>`,
  },
  {
    title: "数组方法",
    content: `<p>
      1、push 后面添加 <br />
      2、pop 后面删除 <br />
      3、shift 前面删除<br />
      4、unshif 前面添加 <br />
      5、toString 转字符串 <br />
      6、join 转字符串，并以指定符号拼接<br />
      7、循环遍历：map、filter、foreach、every、some、find、reduce <br />
      8、concat 合并数组 <br />
      9、reverse 翻转元素 <br />
      10、slice 截取部分，浅拷贝 <nbr />
      11、sort 排序并返回新数组 <br />
      12、splice 删除、添加元素 <br />
      13、includes 是否包含某个元素 <br />
    </p>`,
  },
];
